home *** CD-ROM | disk | FTP | other *** search
- Path: grafix.xs4all.nl!john.hendrikx
- Date: Sun, 28 Jan 96 19:37:32 GMT+1
- Newsgroups: comp.sys.amiga.programmer
- Distribution: world
- Subject: Re: Amiga doesn`t need Planar!
- MIME-Version: 1.0
- Content-Type: text/plain; charset=iso-8859-1
- Content-Transfer-Encoding: 8bit
- From: john.hendrikx@grafix.xs4all.nl (John Hendrikx)
- Message-ID: <john.hendrikx.4a6j@grafix.xs4all.nl>
- Organization: Grafix Attack BBS Holland
-
- In a message of 27 Jan 96 Michael Van Elst wrote to All:
-
- >> It takes 100*7 reads and 100*7 writes. The reads are of course necessary
- >> because you wouldn't want to modify the contents 'surrounding' the
- >> vertical line.
-
- MVE> That's not a property of planar displays. It is a property of the
- MVE> Amiga display system.
-
- Well I was discussing the Amiga display system mainly.
-
- MVE> Look at the Apple Lisa (probably similar for the original Macintosh).
- MVE> It used a 1 bitplane display and you could write just the 1 bits of the
- MVE> line since your data word was sent to the write-enables instead of the
- MVE> data pins of the RAM chips.
- MVE> Advanced VRAMs support this write-mask technique internally.
-
- That's still a lot more work for a 7 bitplane screen, the only thing you don't
- need to do is the reads, still 7 writes though.
-
- >> As memory-speed is usually the thing which determines the speed of the
- >> end-result you'll find that the Chunky solution is a factor 14 faster.
- >> (and itcould be worse if I had used 8-bit planar screens).
-
- So change that to a factor 7, for non-Amiga planar systems.
-
- >> gives you 2880 LONG gfx-memory-accesses. Dedicated hardware is a
- >> requirement here as the masking process is quite complex to do with the
- >> CPU.
-
- MVE> That's the point. Chunky is what a general purpose CPU does. For
- MVE> planar you need a CPU (or render engine) that supports planes. You also
- MVE> do not need to read the destination.
-
- Yes you do, again talking about the Amiga planar system. The blitter needs to
- read the destination, AND it with the inversed Mask, then OR the source data
- into it and then write it back to the destination.
-
- >> (ie, no need for a seperate mask!!).
-
- MVE> You don't need a full mask for planar either. You just have to mask
- MVE> the borders.
-
- Wrong, I was talking about a cookie-cutted object, and for all you know it
- could have contained holes, or whatever. A full mask is required here.
-
- >> It is notable though that Planar -requires- dedicated hardware to get any
- >> kind of speed, and still manages to perform quite poorly in both examples
-
- MVE> Just because you do not use dedicated hardware.
-
- If you take into account the extra effort required to make good use of a deep
- planar display then dedicated hardware is likely to reflect upon this. In
- other words it will be more complex, need more memory accesses and in general
- it will be slower than chunky hardware at higher costs.
-
- The fact that the CPU is well equipped to handle Chunky display hardware is a
- huge advantage, as then the CPU can be used to implement tricks not directly
- supported in the hardware. With planar you have to rely on the hardware, if it
- gets outdated or you want to do Gouraud shaded texturemapping instead of
- old-style plain texturemapping which was supported in the hardware then you're
- at a loss, and you'd have to resort to C2P and all that crap.
-
- >> (especially if you take into account that it performs worse even with
- >> less colors than the Chunky examples).
-
- MVE> Some people think that the support for less colors is an advantage.
-
- Yes, and I would have agreed with them a few years ago when 8-bit was still
- 'too slow' to be usefull. Now however even 24-bit screens zip along nicely.
-
- Most Chunky hardware on the clones however does have a few low color modes
- which should reduce the amount of memory used, just like planar can. The only
- thing is that you're limited in your choice of the number of colors a bit more
- severly than with Planar.
-
- >> Chunky can VERY easily be handled with the CPU alone, or even in parallel
- >> with a Chunky blitter.
-
- MVE> That's why it is popular.
-
- That's also why it is fast and easy to create new (not supported by the
- hardware directly) effects with it.
-
- >> Also, even if Planar had
- >> a blitter as fast as the Chunky blitter the planar blitter would have to
- >> move a lot more data to get the same results,
-
- MVE> No. It has to access more data at the borders of the object. That's
- MVE> significant for very low res objects only.
-
- See above, I was talking about (real-life) cookie cutted objects, not a window
- or something. The object may contain holes, it may not, and the left/right
- border may not even be a straight line.
-
- >> with the CPU alone.
-
- MVE> That's the point. The CPU does not support planar displays. If all you
- MVE> have is the CPU then you want a chunky display.
-
- But what reason would anyone have to use planar? It requires extra
- hardware(!!), you limit the CPU as it can do
- -nothing- usefull at all when it comes to displaying graphics. Using Chunky
- you get extra hardware as well (although this time OPTIONAL) and the CPU can do
- the same tricks the hardware can, and as CPU technology progresses it may
- eventually do it faster too.
-
- >> Also ever thought of how easy scrolling is in Chunky? Planar without the
- >> Copper would be hell to scroll horizontally, while in Chunky it is nothing
- >> more than a copy-loop.
-
- MVE> The copper doesn't scroll anything. The blitter does with a simple
-
- Sigh, the copper is the one which loads the horizontal scroll register in most
- cases, so it definitely does something.
-
- MVE> copy loop (and a zero cost funnel shifter).
-
- Plus a last and first word mask, and it needs to shift in X bits, each at a
- different memory location, depending on the number of bitplanes. See how
- complex this is?
-
- Grtz John
-
- -----------------------------------------------------------------------
- John.Hendrikx@grafix.xs4all.nl TextDemo/FastView/Etc... development
- -----------------------------------------------------------------------
- -- Via Xenolink 1.981, XenolinkUUCP 1.1
-